﻿using Qianke.Core.Common.Dto;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using Volo.Abp.Application.Dtos;

namespace BingYing.SAAS.SystemModel.Contracts.BaseInfo
{
    public interface ISaasBaseService<TPrimaryKey,TGetModelOutputDto,TAddAndUpdateInputDto,TGetPageInputDto,TGetPageOutputDto>
    {

        Task<TGetModelOutputDto> GetModel(EntityInputDto<TPrimaryKey> entityDto);

        Task<TGetModelOutputDto> AddOrUpdate(TAddAndUpdateInputDto dto);

        Task<PageOutputDto<TGetPageOutputDto>> GetPage(TGetPageInputDto dto);


        Task Delete(EntityInputDto<TPrimaryKey> entityDto);
    }
}
